The present invention generally relates to engine control systems and, more particularly, to a method and apparatus for diagnosing dead fuel injectors and correcting unbalanced fuel injectors.
In a multi-cylinder reciprocating internal combustion engine, there are differences in the amount of useful torque produced by each cylinder, even during normal operation. Small between-cylinder torque differences can cause rough idling and poor emissions performance. Large between-cylinder differences can cause extremely rough operation and may indicate faulty cylinder and/or fuel injection components. The process of sensing these torque differences and using the information for compensation or diagnosis of engine operation is known as cylinder balancing.
Most present day electronically controlled engines include some form of interrupt-based engine speed sensing mechanism, which allows measurement of engine speed at very short intervals. Although there have been prior art systems which try to diagnose fuel injector malfunction off-line or when the engine is not running, they have generally proven to be unsatisfactory. There is therefore a need for a method and apparatus for diagnosing and correcting malfunctioning fuel injectors and unbalanced cylinders while the engine is on-line or running. The present invention is directed toward meeting this need.
Manufacturing/design imperfections and component failures in the fuel system/engine can lead to non-uniform torque production among the engine cylinders. Non-uniform cylinder torques can be observed as small engine speed fluctuations about the average engine speed at any given operating point. Engine speed data contains such fluctuations at different frequencies. The amplitude of these speed fluctuations at some known frequencies tell about the health of the fuel injectors and the engine. In the present invention, the instantaneous engine speed data is filtered by discrete band-pass filters to produce the engine speed fluctuations at particular frequencies. The output of the filters is identical to the power spectral density of the speed signal at those frequencies. The amplitude of each filter output is then compared to a user-defined threshold value. An amplitude larger than this threshold indicates the existence of low-fueling or high-fueling fuel injectors. If the amplitude is bigger than a second higher threshold, then this indicates the existence of dead fuel injectors.
In one form of the invention, a method for diagnosing malfunctioning fuel injectors is disclosed, comprising the steps of: a) sensing a speed of the engine a plurality of times during a time period; b) filtering the sensed engine speed, thereby producing engine speed fluctuation data at predetermined frequencies corresponding to specific fuel injectors; c) generating a fault code for fuel injectors with engine speed fluctuations exceeding a predetermined threshold.
In another form of the invention, a method for diagnosing malfunctioning fuel injectors is disclosed, comprising the steps of: a) sensing a speed of the engine a plurality of times during a time period; b) filtering the sensed engine speed, thereby producing engine speed fluctuation data at predetermined frequencies corresponding to specific fuel injectors; c) performing a program correcting the fuel injectors with engine speed fluctuations exceeding a predetermined threshold.
In another form of the invention, a method for engine cylinder balancing and diagnosing dead fuel injectors is disclosed, comprising the steps of: a) sensing a speed of the engine a plurality of times during a time period; b) filtering the sensed engine speed, thereby producing engine speed fluctuation data at predetermined frequencies corresponding to a specific fuel injector; c) comparing the filtered engine speed fluctuations to a first predetermined threshold value; d) comparing the engine speed fluctuations to a second predetermined threshold value when the engine speed fluctuations did not satisfy the threshold conditions in step (c); e) if the engine speed fluctuations did not satisfy the threshold conditions in step (d); performing steps (e.1) through (e.4); e.1) resetting all fuel injector trims to a predetermined value and calculating the total engine speed fluctuation; e.2) for a first one of the plurality of fuel injectors reducing fuel injector fueling by a predetermined value and calculating a new total engine speed fluctuation; e.3) generating a fault code for the first fuel injector when the calculated engine speed fluctuations from steps (e.1) and (e.2) are equal; e.4) repeating steps (e.1) through (e.3) for each remaining fuel injector; (f) if the engine speed fluctuations satisfy the threshold conditions in step (d); performing steps (f.1) through (f.3); f.1) adjusting the trim for the first fuel injector and calculating the total engine speed fluctuation; f.2) readjusting the trim for the first fuel injector until the calculated total engine speed fluctuation is at a local minimum; f.3) repeating steps (f.1) through (f.2) for all fuel injectors; g) generating fault codes corresponding to adjustments made to each of the fuel injectors.